package algorithms;

import java.util.ArrayList;

import templates.Operator;
import templates.State;

public class Context<Template> {
	 private Strategy<Template> strategy;
	 
	    public Context(Strategy<Template> strategy) {
	        this.strategy = strategy;
	    }
	    
	    public void setStrategy(Strategy<Template> strategy)
	    {
	    	this.strategy=strategy;
	    }
	 
	    public void executeStrategy(State<Template> iState,ArrayList<State<Template>> fStates,ArrayList<Operator<Template>> opr,String log) {
	        strategy.execute(iState,fStates,opr,log);
	    }


}
